package com.fabriciojf.util;

import java.text.SimpleDateFormat;

/**
 * Classe para manipulacao de arquivos texto de log
 *
 * @author fabricio
 * @since 18/03/2010
 * @version 1.1 19/04/2010
 */
public class LogCS {
    
    private TextFileCS tf;
    private String path;

    /**
     * Construtor
     * @param arquivo de texto
     */
    public LogCS(String arquivo) {
        path = arquivo;
        tf = new TextFileCS(arquivo);
    }

    /**
     * Adiciona texto ao arquivo de log
     * @param text
     */
    public void setText(String text) {
        tf.addText(prompt() + text);
        tf.save();
    }

    /**
     * Apaga o arquivo de log
     */
    public void clean() {
        tf.cleanFile();
    }

    /**
     * Retorna o prompt para deixar o log mais legivel
     * @return
     */
    private String prompt() {

        // mascaras de data e hora
		String data = "dd/MM/yyyy";
		String hora = "h:mm";
		String data1, hora1;

        // pega a data e hora do sistema e formata
		java.util.Date agora = new java.util.Date();
        SimpleDateFormat formata = new SimpleDateFormat(data);
		data1 = formata.format(agora);
		formata = new SimpleDateFormat(hora);
		hora1 = formata.format(agora);

        // retorno do tipo 01/01/2010 01:00 >
        return data1 + " " + hora1 + " >";
    }

    /**
     * @return the path
     */
    public String getPath() {
        return path;
    }

    /**
     * @param path the path to set
     */
    public void setPath(String path) {
        this.path = path;
    }

    /**
     * @return the conteudo
     */
    public String getText() {
        return tf.getText();
    }
}
